﻿using System;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Linq;
using System.Runtime.Serialization;
using System.ServiceModel;
using System.Text;
using CommunitySystemModel;

namespace CommunitySystem.Web.Service
{
    // 注意: 使用“重构”菜单上的“重命名”命令，可以同时更改代码和配置文件中的接口名“IJinShengService”。
    [ServiceContract]
    public interface IJinShengService
    {
        [OperationContract]
        ObservableCollection<JinShen_MainInfo> GetJinShen_MainInfo(string condition, string LoginUser);

        [OperationContract]
        void SaveJinShenMainInfo(JinShen_MainInfo entity);

        [OperationContract]
        void DeleteJinShenMainInfo(JinShen_MainInfo entity);

        [OperationContract]
        void SaveJinShenDetail(JinShen_DetailInfo entity);

        [OperationContract]
        ObservableCollection<Emp_BasicInfoModel> GetEmpBasicInfo(string condition);

        [OperationContract]
        ObservableCollection<JinShen_MainInfo_Check> GetMainInfo_Check(string condition);

        [OperationContract]
        bool SaveMainInfo_Check(JinShen_MainInfo_Check entity);

        [OperationContract]
        ObservableCollection<JinShen_CompetSpeech_Main> GetCompetSpeechMain(string condition);

        [OperationContract]
        bool SaveJinShen_CompetSpeech_Main(JinShen_CompetSpeech_Main entity);

        [OperationContract]
        ObservableCollection<JinShen_Democraticevaluation_Main> GetDemocraEvalution(string condition);

        [OperationContract]
        bool SaveJinShen_Democraticevaluation_Main(JinShen_Democraticevaluation_Main entity);

        [OperationContract]
        bool SaveDetailCheck(JinShen_Democraticevaluation_Main evaMain, JinShen_CompetSpeech_Main speechMain, JinShen_MainInfo main);

        [OperationContract]
        string GetOrgForHR(string loginUser);

        [OperationContract]
        bool SaveJinShen_ChooseCandidator_Main(JinShen_ChooseCandidator_Main entity);

        [OperationContract]
        ObservableCollection<JinShen_ChooseCandidator_Main> GetJinShen_ChooseCandidator_Main(string condition);

        [OperationContract]
        void SaveJinShen_KaoCha_Detail(JinShen_KaoCha_Detail[] details);

        [OperationContract]
        ObservableCollection<JinShen_KaoCha_Detail> GetJinShen_KaoCha_Detail(string condition);

        [OperationContract]
        void SaveJinShen_DangGongWei_Detail(JinShen_DangGongWei_Detail[] details);

        [OperationContract]
        ObservableCollection<JinShen_DangGongWei_Detail> GetJinShen_DangGongWei_Detail(string condition);

        [OperationContract]
        void SaveJinShen_PublicShow_Detail(JinShen_PublicShow_Detail[] details);

        [OperationContract]
        ObservableCollection<JinShen_PublicShow_Detail> GetJinShen_PublicShow_Detail(string condition);

        [OperationContract]
        ObservableCollection<Emp_BasicInfoModel> GetEmpBasicInfoAccordingToDuty(string condition);

        [OperationContract]
        string DownLoadFile(string key, string GuidName, string RealName);

        [OperationContract]
        bool ComfirmJinShen(int MainInfoID, string Stauts);
        
    }
}
